Commit graph

71 commits

Author SHA1 Message Date
Kijin Sung
0b9131e664 Remove unnecessary encoding of /, &, ' in template v2 JSON output 2024-03-24 21:29:54 +09:00
Kijin Sung
de08f5ee62 유닛 테스트 수정 및 강화하여 #2214 보완 2023-11-25 22:30:51 +09:00
Kijin Sung
40d3ce4f46 Add unit test ad5c3c0f5 2023-11-21 22:13:56 +09:00
Kijin Sung
e72336c90c Fix #2203 'this' in lang directive will refer to current module 2023-10-31 21:59:33 +09:00
Kijin Sung
fefd3dd895 Fix path normalization problem 2023-10-21 14:19:20 +09:00
Kijin Sung
6085b82d19 Inherit parent vars and add own vars when a template is included with vars from another template that has vars; add unit tests for vars inheritance 2023-10-21 13:52:02 +09:00
Kijin Sung
5b47151440 Change desktop and mobile directives to reference static Context method 2023-10-21 13:35:24 +09:00
Kijin Sung
3c401bbc20 Add pushOnce and prependOnce helper directives 2023-10-18 21:16:39 +09:00
Kijin Sung
c50cc71ce1 Fix random loop ID always changing in template v2 unit test 2023-10-18 12:28:51 +09:00
Kijin Sung
c487c13864 Apply context-aware escape more generally; add can/cannot/canany and env directives 2023-10-18 12:09:45 +09:00
Kijin Sung
c19d71847f Implement template v2 feature of pushing to stack 2023-10-18 02:23:18 +09:00
Kijin Sung
0f14ad8ccf Add error checking directive and unit tests for it 2023-10-18 00:29:32 +09:00
Kijin Sung
e044e11c5f Convert include code into a method of Template class 2023-10-18 00:01:11 +09:00
Kijin Sung
012dbb9ab7 Convert resource loading code into a method of Template class 2023-10-17 23:29:55 +09:00
Kijin Sung
55cafc5c33 Convert class and style builder into a method of Template class 2023-10-17 22:44:27 +09:00
Kijin Sung
82b9107ca0 Add support for fragment in template v2 2023-10-17 22:25:53 +09:00
Kijin Sung
a6afa3a61d Add loop variable and dump directive; reorganize template v2 unit tests 2023-10-17 20:12:22 +09:00
Kijin Sung
fe804163bf Add JSON_HEX_TAG and JSON_HEX_QUOT to JSON output filter 2023-10-17 19:00:00 +09:00
Kijin Sung
3c15589fb8 Allow loops and conditions to appear anywhere in a line 2023-10-17 03:28:20 +09:00
Kijin Sung
66980edab1 Allow use, include, and load directives to appear anywhere in a line 2023-10-17 03:06:40 +09:00
Kijin Sung
11ef5dcfff Add support for Blade-style @class and @style directives 2023-10-17 02:45:22 +09:00
Kijin Sung
668feea9e9 Add support for Blade-style @each include loop 2023-10-17 02:26:06 +09:00
Kijin Sung
eba9a4d333 Add unit test for actually compiling a v2 template 2023-10-17 00:33:36 +09:00
Kijin Sung
5899845b1d Update unit tests for template v2 2023-10-16 13:16:20 +09:00
Kijin Sung
27ab3fa7d9 More unit tests for template parser v2 2023-10-15 23:42:49 +09:00
Kijin Sung
9da1d56b21 Partial implementation of unit test for template parser v2 2023-10-15 23:03:27 +09:00
Kijin Sung
a640306123 Move unit test for TemplateParser v1 2023-10-15 00:50:26 +09:00
Kijin Sung
770cde8b8a Preserve line numbers when compiling SCSS with sourcemap 2023-09-04 23:40:09 +09:00
Kijin Sung
9d4961ff0d Update unit tests to force charset declaration and accommodate sourcemap comment 2023-09-04 23:05:14 +09:00
Kijin Sung
74cc098370 Remove incorrect sourceMap link in concatenated JS output 2023-09-04 22:00:12 +09:00
Kijin Sung
2b916a8bdb Add unit tests for session and cache-control attributes of module.xml 2023-08-30 22:41:14 +09:00
Kijin Sung
316cb49729 Update unit test for ModuleActionParser 2023-08-11 22:17:10 +09:00
Kijin Sung
d0306df095 Add parser logic for new module.xml settings 2023-08-10 23:52:01 +09:00
Kijin Sung
9e9adcdb43 Remove support for targetie attribute on assets 2022-12-28 00:35:57 +09:00
Kijin Sung
d34d08438f Fix #2052 move all charset and import statements to the beginning of concatenated CSS scripts 2022-12-28 00:06:50 +09:00
Kijin Sung
23a827923e Support timestamp() with customizable format in XML query 2022-12-24 22:38:18 +09:00
Kijin Sung
4cc730e489 Support order_default attribute to <index> tag in XML query 2022-12-18 01:18:55 +09:00
Kijin Sung
8b611e9d08 Add more tests for table alias handling (#1956 보완) 2022-07-03 17:49:19 +09:00
Kijin Sung
cb9f3dd1db Fix #1868 incorrect parsing of CSS/SCSS import containing special characters 2022-02-03 14:28:25 +09:00
Kijin Sung
7f6e020d97 PROPERLY fix null value handling in both read and write queries 2022-01-25 14:54:17 +09:00
Kijin Sung
f7146a4791 Fix #1778 support multi-column unique indexes using legacy syntax 2021-08-26 00:44:13 +09:00
Kijin Sung
6a4d3d912c Fix #1706 support default="null" in XML query parser 2021-06-19 20:26:09 +09:00
Kijin Sung
b01a148675 Fix #1729 @import of external URL in concatenated CSS 2021-06-19 19:39:57 +09:00
Kijin Sung
741a714abd Set standalone attribute to 'auto' if new class syntax is used in module.xml
- 새로 추가된 클래스 문법 사용시 standalone 속성 기본값은 true가 아닌 auto로 지정

- standalone 속성의 의미는 아래와 같음
  - true: 항상 접근 허용 (기존 방식으로 선언한 액션의 기본값)
  - false: mid가 소속 모듈과 일치하거나, admin 모듈인 경우에만 접근 허용
  - auto: module 또는 mid가 소속 모듈과 일치하거나, admin 모듈인 경우에만 접근 허용
    (즉, false와 비슷하지만 exec_json 함수 등에서 module+act로 호출하는 경우에는
    mid가 없더라도 module만 일치하면 호출할 수 있도록 허용하여 개발 편의를 높임)

- 단, global_route 속성이 있는 경우 standalone 속성 기본값은 true임
  (전역 짧은주소는 mid 없이 호출될 수밖에 없으므로)
2021-04-20 21:45:21 +09:00
Kijin Sung
6b7486e74f Add 'ifvar' attribute to most query elements
XML 쿼리에서 'ifvar' 속성을 사용하여, 특정 변수가 있을 때만 유효한 테이블이나
컬럼, 인덱스 힌트 등을 지정할 수 있도록 합니다. 어떤 변수를 넣는지에 따라
<condition> 뿐 아니라 <table>, <column>, <index_hint? 등의 적용 여부도
XML 쿼리 수정 없이 자유롭게 컨트롤할 수 있게 됩니다.
2021-02-09 21:58:07 +09:00
Kijin Sung
957be16a25 Replace all wildcard columns with '1' in count-only subquery #1575 2021-01-29 14:40:28 +09:00
Kijin Sung
aefa19e850 Fix SCSS imports with relative paths not working 2021-01-21 15:45:58 +09:00
Kijin Sung
03e5909036 Add ability to configure index hint with variable
See #1560
2021-01-14 00:40:57 +09:00
Kijin Sung
02122cb383 Add unit tests for SELECT COUNT(*) queries 2021-01-07 01:06:02 +09:00
Kijin Sung
9e7d654885 #1517 보완: 더 복잡한 조건으로 유닛 테스트 추가 2021-01-02 22:47:14 +09:00